home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
8bitfiles.net/archives
/
archives.tar
/
archives
/
compuserve-file-archive
/
05 Programming
/
ACE1.SFX
/
doc2.txt
< prev
next >
Wrap
Text File
|
1994-05-23
|
26KB
|
563 lines
5.5. ╦┼┘┬╧┴╥─
┴ CUSTOM KEYBOARD SCANNER HAS BEEN ADDED ALSO. ╔T SUPPORTS A THREE-KEY
ROLLOVER AS DISCUSSED IN ├= ╚ACKING ╬ET═AGAZINE ╔SSUE #6. ╘HE KEY
MATRICIES WILL BE EXTENDED TO INCLUDE A NUMBER OF STANDARD CONTROL CHARACTERS
FOR THINGS LIKE "PAGE UP," ETC. ╦EY SCANNING HAS BEEN COMPLETELY TAKEN OVER
TO IMPLEMENT THE THREE-KEY ROLLOVER, AND TO AVOID INTERFERENCE WITH THE
JOYSTICK IN PORT #1.
╘HERE ARE A FEW NEW KEYBOARD CONTROLS. ╘O TEMPORARILY PAUSE A LISTING GOING
TO THE SCREEN, PRESS THE ├╧╬╘╥╧╠ KEY. ╧UTPUT WILL RESUME WHEN YOU RELEASE
THE KEY. ╞OR THE ├128, THE ╬╧ ╙├╥╧╠╠ KEY IS SUPPORTED IN THE NORMAL WAY.
╧N THE 64, TO ACHIEVE THE SAME EFFECT, PRESS THE ╥╒╬/╙╘╧╨ KEY WHILE HOLDING
DOWN THE ├╧╬╘╥╧╠ KEY TO PAUSE OUTPUT UNTIL YOU EXPLICITLY RE-ENABLE IT. ╘O
DO THIS, JUST PRESS ╬╧ ╙├╥╧╠╠ (128) OR ├╧╬╘╥╧╠-╙╘╧╨ (64) AGAIN. ╘O MAKE THE
SCREEN SCROLL VERY SLOWLY, HOLD DOWN THE ├╧══╧─╧╥┼ KEY. ╧N THE 128,
THE ├┴╨╙ KEY IS SUPPORTED IN THE NORMAL WAY (WITH ├┴╨╙-╤ FIXED), AND TO
ACTIVATE CAPS LOCK MODE ON THE 64, PRESS ├╧══╧─╧╥┼-╙╘╧╨, AND PRESS IT AGAIN
TO RELEASE CAPS LOCK MODE. ╘HE KEY DELAY AND REPEAT RATES ARE NOT USER-
DEFINABLE RIGHT NOW, BUT THEY WILL BE. ┴LSO, FUNCTION KEYS WILL BE
APPLICATION-DEFINABLE (WHERE THE COMMAND SHELL CAN BE CONSIDERED AN
APPLICATION). ╙OMETHING THAT YOU MAY FIND ODD IS THAT THE CURSOR COLOR CAN
BE DIFFERENT FROM THE CHARACTER COLOR. ─EAL WITH IT.
╘HE LINE EDITING CAPABILITIES HAVE BEEN EXTENDED OVER RELEASE #9. ┘OU MAY
ENTER UP TO 254 CHARACTERS (PLUS A CARRIAGE RETURN) ON A SINGLE LINE.
┘OU MAY MOVE THE CURSOR BACK AND FORTH ON AN INPUT LINE USING THE CURSOR
LEFT AND RIGHT KEYS, AND YOU MAY GO TO THE BEGINNING OR END OF A LINE
BY PRESSING THE ├╘-╩ AND ├╘-╦ KEYS, RESPECTIVELY. ╘HE ├╧-╠┼╞╘ AND ├╧-╥╔╟╚╘
KEYS DO THE SAME THING ON THE 128 (USING THE EXTENDED CURSOR KEYS).
╚ERE, "├╧" MEANS "COMMODORE", "├╘" MEANS CONTROL, AND "╙╚" MEANS SHIFT.
╫HEN YOU ARE IN THE MIDDLE OF A LINE, ENTERING NEW CHARACTERS WILL CAUSE
THEM TO BE INSERTED AT THE CURSOR POSITION, AND PRESSING THE ─┼╠ KEY WILL
CAUSE THE CHARACTER TO THE LEFT OF THE CURSOR TO BE DELETED.
╘O DELETE THE ENTIRE LINE, YOU CAN TYPE ├╘-╒, AND TO REDISPLAY THE LINE
PRESS ├╘-╥. ╘WO WEIRD THINGS CAN HAPPEN WHILE YOU ARE EDITING A LINE. ╙INCE
THE ├╧╬╘╥╧╠ KEY CAUSES PRINTING TO STOP AT THE END OF A LINE, IF YOU TYPE
SOMETHING LIKE ├╘-╦ AND YOU ARE EDITING A LINE THAT SPLITS OVER TWO PHYSICAL
LINES, YOU WILL NOT SEE THE CURSOR AGAIN UNTIL YOU RELEASE THE ├╘ KEY. ┴LSO,
IF YOU ARE EDITING INSIDE OF A SMALL WINDOW AND THE LINE BEING EDITIED BECOMES
LONGER THAN THE WINDOW, THE CURSOR POSITION ON THE INPUT LINE WILL NOT
CORRESPOND TO WHAT IS ON THE SCREEN. ╔T IS BEST TO AVOID THIS SITUATION.
╫HEN YOU WISH TO GENERATE AN ┼╧╞ (END-OF-FILE) SIGNAL FROM THE KEYBOARD,
PRESS ├╧╬╘╥╧╠-─ WHEN YOU ARE AT THE BEGINNING OF A BLANK INPUT LINE. ╧N A
LINE WITH CHARACTERS ON IT, YOU WILL SEE THE CONTROL CODE WHICH WILL BE
TREATED LIKE ANY OTHER CHARACTER.
------------------------------------------------------------------------------
6. ├╧══┴╬─╙
6.1. ┬╒╔╠╘-╔╬ ├╧══┴╬─╙
╘HE FOLLOWING SUBSECTIONS GIVE THE LOW DOWN ON ALL OF THE EXECUTABLE PROGRAMS
PROVIDED WITH ┴├┼, INCLUDING THE SYSTEM PROGRAMS AND EXTERNAL USER PROGRAMS.
╞OR EACH COMMAND, A SYNOPSIS IS GIVEN, FOLLOWED BY THE DESCRIPTION.
--------
ECHO [ARG ...]
╨RINT THE GIVEN ARGUMENTS TO STDOUT, WITH A SPACE BETWEEN EACH AND A CARRIAGE
RETURN AT THE END OF THE LINE.
--------
CLEAR
CLS
├LEAR THE SCREEN. "CLS" IS THE ═╙-─╧╙ NAME AND "CLEAR" IS THE ╒NIX NAME.
╘HIS COMMAND SIMPLY EMITS A "FORM-FEED" CHARACTER TO STDOUT.
--------
DIR [DIRNAME]
D [DIRNAME]
LS [DIRNAME]
CLSL [DIRNAME]
─ISPLAY A DIRECTORY LISTING OF THE GIVEN DIRECTORY OR OF THE CURRENT DIRECTORY
IF NO "DIRNAME" IS GIVEN. ╘HIS COMMAND HAS SO MANY VARIENTS BECAUSE IT IS
SO USEFUL. "DIRECTORY" AND "DIR" ARE SYNONYMOUS AND CLEAR THE SCREEN BEFORE
GIVING A LONG-FORM DIRECTORY LISTING. "D" GIVES A LONG-FORM DIRECTORY LISTING
WITHOUT CLEARING THE SCREEN. "LS" GIVES A SHORT-FORM DIRECTORY LISTING WITHOUT
CLEARING THE SCREEN, AND "CLSL" GIVES A SHORT-FORM LISTING AFTER CLEARING THE
SCREEN.
╙HORT-FORM LISTINGS INCLUDE ONLY THE FILENAMES OF THE FILES IN THE DIRECTORY,
WHEREAS LONG-FORM LISTINGS INCLUDE DIRECTORY NAME, FILE PERMISSIONS, DATE AND
TIME OF LAST MODIFICATION, LENGTH (IN BLOCKS*254 BYTES), FILE TYPE, AND
FILENAME. ╧N 40-COL DISPLAYS, THE DATE AND TIME FIELDS ARE OMITTED. ╞OR
TECHNICAL REASONS (BECAUSE THEY ARE BUILT-IN AND SPACE IS LIMITED), THESE
COMMANDS WILL NOT ACTUALLY DISPLAY A REAL DATA AND TIME. ┘OU MUST USE THE
EXTERNAL PROGRAM "XLS" TO SEE REAL DATES AND TIMES.
--------
CD [DIRNAME]
├HANGE THE CURRENT WORKING DEVICE AND DIRECTORY TO THE GIVEN DIRECTORY NAME.
╔F NO DIRECTORY NAME IS GIVEN, CHANGE TO THE "HOME" (INITIAL) DIRECTORY. ┬OTH
"CD" AND "G" ARE EXACTLY SYNONYMOUS.
--------
CAT [FILE ...]
─ISPLAY THE CONTENTS OF THE NAMED FILES TO STDOUT. ╔F NO FILES ARE NAMED,
THEN INPUT IS TAKEN FROM STDIN (NORMALLY THE KEYBOARD).
--------
EXIT
X
┼XIT FROM THE COMMAND SHELL. ┼╧╞ ON STDIN (NORMALLY ├ONTROL-─ FROM THE
KEYBOARD) HAS THE SAME EFFECT. ╔F THE CURRENT COMMAND SHELL IS THE INITIAL
ONE STARTED BY THE SYSTEM (PROCESS #2), THEN ┴├┼ WILL EXIT BACK TO ┬┴╙╔├.
╧THERWISE, THE COMMAND SHELL WILL EXIT BACK TO THE PROGRAM THAT INVOKED IT.
--------
DOS COMMAND
@ COMMAND
╟IVE A ├OMMODORE-─╧╙ COMMAND TO THE CURRENT DEVICE (╧╨┼╬1,DV,15..). ┬OTH
"DOS" AND "@" ARE EXACTLY SYNONYMOUS.
--------
PATH
PATH DIRNAME ...
─ISPLAY OR SET THE PATH TO SEARCH FOR SEARCHING FOR EXTERNAL PROGRAMS. "PATH"
ALONE ON A COMMAND LINE DISPLAYS THE CURRENT SEARCH PATH, AND "PATH" FOLLOWED
BY ARGUMENTS WILL SET THE SEARCH PATH TO THE FOLLOWING ARGUMENTS.
--------
SH
╔NVOKE A SUB-SHELL. ├URRENTLY, ARGUMENTS ARE NOT ACCEPTED. ╘HE SUBSHELL WILL
ACCEPT ITS COMMANDS ONLY FROM STDIN.
------------------------------------------------------------------------------
6.2. ╙┘╙╘┼═ ╨╥╧╟╥┴═╙
ACE
╘HIS IS THE MAIN LOADER. ╔T DETERMINES WHETHER IT IS RUNNING ON A 128 OR A 64
AND THEN LOADS AND RUNS EITHER "ACE128" OR "ACE64" BELOW.
--------
ACE128
ACE64
╘HESE ARE THE KERNEL PROGRAMS.
--------
CONFIG
╘HE SYSTEM CONFIGURATION PROGRAM. ╘HIS IS NOT A USER-EXECUTABLE PROGRAM; IT
IS LOADED AND EXECUTED WHILE THE SYSTEM IS BOOTSTRAPPING. ╘HIS PROGRAM LOADS
THE "CONFIG.SYS" AND "ACE-CHARSET" FILES, INITIALIZES THE DYNAMICALLY
ALLOCATED MEMORY, AND SETS THE DATE.
--------
CONFIG.EDIT
╘HE CONFIGURATION EDITOR WRITTEN IN ┬┴╙╔├. ╠╧┴─ AND ╥╒╬ IT DIRECTLY FROM
┬┴╙╔├. ╞ULL-SCREEN INTERFACE. ╙AME PROGRAM RUNS ON EITHER A 128 OR 64.
--------
SH
╘HE COMMAND SHELL.
------------------------------------------------------------------------------
6.3. ┼╪╘┼╥╬┴╠ ╨╥╧╟╥┴═╙
CP FILE DESTFILE
CP FILE ... DIRECTORY
┴ FILE COPIER. ╧PERATES LIKE THE ╒NIX FILE COPIER PROGRAM. ╔F YOU GIVE TWO
FILENAMES, WILL COPY THE FIRST FILE TO THE SECOND NAME. ╔F A NUMBER OF FILE
NAMES ARE GIVEN AND THE LAST ARGUMENT IS A DIRECTORY NAME IS GIVEN, WILL COPY
ALL OF THE FILES, RETAINING THEIR NAMES, INTO THE GIVEN DIRECTORY.
╔F A FILE THAT YOU WANT TO COPY TO ALREADY EXISTS, THEN YOU WILL BE PROMPTED
FOR WHETHER YOU WANT TO OVERWRITE THE FILE: YES, NO, ALL, OR QUIT. ┴NSWERING
┘ES WILL OVERWRITE THE FILE, AND CONTINUE ONTO THE NEXT FILE. ┴NSWERING ╬O
WILL ABORT COPYING THE CURRENT FILE AND CONTINUE ONTO THE NEXT FILE.
┴NSWERING ┴LL WILL HAVE THE SAME ACTION AS ┘ES, EXCEPT THAT IT WILL NEVER ASK
YOUR PERMISSION AGAIN; IT WILL ALWAYS ASSUME ┘ES. ┴NSWERING ╤UIT WILL ABORT
THE ENTIRE COPY OPERATION WITHOUT DISTURBING ANY MORE FILES.
╔ WOULD REALLY LIKE TO GET A "-R" (RECURSIVE) OPTION WORKING. ┴LSO A "-F"
(FORCE) OPTION.
--------
RM FILE ...
╞ILE REMOVER (SCRATCHER). ┴LL NAMED FILES WILL BE DELETED.
--------
MV OLDFILE1 NEWFILE1 ... OLDFILE╬ NEWFILE╬
╞ILE RENAMER. ╞OR EACH PAIR OF NAMES, THE OLD NAME WILL BE CHANGED TO THE
NEW NAME. ╔F THE NEW NAME ALREADY EXISTS, THEN THE PROGRAM WILL REPORT AN
ERROR. ╘HIS USES THE CRUFTY ├OMMODORE RENAME ─╧╙ COMMAND, SO DON'T EVEN
THINK ABOUT RENAMING A FILE THAT IS NOT IN THE CURRENT DIRECTORY OR "MOVING"
A FILE BETWEEN DIRECTORIES.
--------
MKDIR FLAT─IR╬AME
├REATE A NEW SUBDIRECTORY IN THE CURRENT DIRECTORY. ╘HE GIVEN NAME MUST BE
"FLAT", I.E., IT IS JUST THE NAME LIKE "DIRNAME", WITHOUT ANY "/"S OR ":"S.
--------
RMDIR FLAT─IR╬AME
╥EMOVE AN EXISTING EMPTY SUBDIRECTORY FROM THE CURRENT DIRECTORY.
--------
XLS [-[C][L]] DIRNAME ...
╙AME AS THE BUILT-IN DIRECTORY AND LS COMMANDS, EXCEPT THIS ONE WILL ACTUALLY
DISPLAY REAL DATES AND TIMES. ┴LSO, THIS WILL DISPLAY THE NUMBER OF FILES,
NUMBER OF FILE BYTES, AND NUMBER OF BYTES FREE AT THE END OF A LONG-FORM
LISTING. ╘HE "-L" FLAG MEANS TO GIVE A LONG-FORM LISTING; OTHERWISE, A
SHORT-FORM LISTING WILL BE GIVEN. ╘HE "-C" FLAG MEANS TO CLEAR THE SCREEN
BEFORE GIVING THE LISTING.
╘HE BUILT-IN DIRECTORY LISTING COMMANDS WILL BE REMOVED FROM THE COMMAND SHELL
AND BE REPLACED WITH THIS ONE AFTER THE ╥┴═DISK IS IMPELEMENTED. ╬OTE THAT
YOU CAN GET A CRUDE DIRECTORY LISTING WITH "ECHO *".
--------
UUENCODE FILE ...
┴ UUENCODER. ╘HE UUENCODE PROGRAM SENDS ITS OUTPUT TO STDOUT, SO YOU WILL
USUALLY WANT TO REDIRECT STDOUT TO A DISK FILE. ╘HIS OUTPUT WILL BE IN
╨ETSCII CHARACTERS, TO WORK WITH THE OTHER TEXT UTILITIES. ╔F YOU WISH TO
HAVE THE OUTPUT IN ┴SCII, THEN YOU MUST RUN IT THROUGH THE "TR" PROGRAM
(BELOW).
--------
UUDECODE FILE ...
┴ UUDECODER. ╘HE UUDECODE PROGRAM WILL ACCEPT EITHER ╨ETSCII OR ┴SCII FILES
AND IS ABLE TO EXTRACT MULTIPLE FILES FROM ONE INPUT FILE. ┼XTRACTED FILES
ARE PUT INTO ╨╥╟ FILES.
--------
BCODE [-HELP] [-V] [-U] [-M] [-L MAX_LINE_COUNT] [FILENAME ...]
┼NCODE THE GIVEN FILES INTO ┬├╧─┼ FORMAT. ╘HIS FORMAT, LIKE UUENCODED FORMAT,
IS USED FOR TRANSMITTING BINARY INFORMATION THROUGH A TEXT-ONLY MEDIUM.
╘HE "-HELP" FLAG IS USED TO DISPLAY "USAGE" INFORMATION TO STDERR. ╘HE COMMAND
WILL EXIT AFTER ENCOUNTERING THE FLAG, BEFORE DOING ANY WORK.
╘HE "-V" FLAG MEANS TO GIVE "VERBOSE" INFORMATION ABOUT WHAT IS GOING ON.
╘HE "-U" AND "-M" FLAGS INSTRUCT BCODE TO OUTPUT IN EITHER ╒NIX (┴SCII-╠F)
OR ═┼╙╙-─╧╙ (┴SCII-├R╠F) FORMAT. ╘HE DEFAULT IS GOOD OLE ╨ETSCII.
╘HE "-L" FLAG AND VALUE ALLOWS YOU TO SPECIFY THE MAXIMUM NUMBER OF BCODED
LINES TO INCLUDE IN EACH SEGMENT OF THE BCODED DATA. ╫HEN THIS FLAG IS USED,
OUTPUT IS SENT TO SPECIAL OUTPUT FILES RATHER THAN TO STDOUT (WHERE IT IS
USUALLY SENT). ╧NE SEGMENT IS SENT TO EACH SPECIAL OUTPUT FILE. ╘HESE SPECIAL
OUTPUT FILES ARE NAMED AFTER THE FILE BEING ENCODED, APPENDED WITH A ".B"
FOLLOWED BY THE AT-LEAST-TWO DIGIT SEGMENT NUMBER. ╔F THE FULL NAME WOULD
EXCEED 16 CHARACTERS, THE "BASENAME" IS TRUNCATED. ╔F THE SOURCE FILE
INCLUDES A PATH, THE PATH IS IGNORED AND THE SPECIAL FILE IS PUT IN THE CURRENT
DIRECTORY. ╞OR EXAMPLE,
BCODE -L 800 B:JUNKFILE
WOULD PUT THE BCODED SEGMENT DATA INTO "JUNKFILE.B01", "JUNKFILE.B02", ...,
"JUNKFILE.B99", "JUNKFILE.B100", ETC., IN THE CURRENT DIRECTORY. ┼ACH LINE OF
BCODED DATA CONTAINS 72 CHARACTERS (WHICH REPRESENT 54 RAW DATA BYTES), SO 800
LINES WILL PRODUCE 59200 BYTES OF OUTPUT (COUNTING ├╥ AND ╠╞ AT THE END OF
EACH LINE), WHICH IS A GOOD SIZE FOR POSTING OR FOR MAILING TO BRAIN-DAMAGED
MAILERS (UNDER 64╦). ╘HE MAX_LINE_COUNT DOES NOT INCLUDE THE TWO CONTROL
LINES IN THE BCODE FORMAT.
╔F YOU INCLUDE FILENAMES ON THE COMMAND LINE, THEN INPUT WILL BE TAKEN FROM
THEM IN TURN. ╧THERWISE, INPUT WILL ╬╧╘ BE TAKEN FROM STDIN AND NO WORK WILL
BE DONE. ┘OU MAY INCLUDE MANY FILENAMES (AND ASSOCIATED ALIASES) ON A COMMAND
LINE TO CREATE A ┬├╧─┼ ARCHIVE (WHICH SHOULD BE SUFFIXED ".BCA").
╔F YOU SPECIFY THAT A FILE IS TO BE BROKEN INTO MULTIPLE SEGMENTS FOR ENCODING,
THEN LAST SEGMENT MAY BE OF ZERO LENGTH. ╘HIS IS NOT AN ERROR AND WILL BE
DECODED CORRECTLY, ALTHOUGH IT MAY BE A BIT OF A PAIN.
--------
UNBCODE [-HELP] [-I] [-V] [-D] [FILENAME ...]
╘HIS IS A FULL-BLOWN ┬├╧─┼ DECODER. ╔T WILL READ ┬├╧─┼ DATA FROM FILES NAMED
IN ANY ORDER AND RECONSTRUCT THE ORIGINAL BINARY FILES THAT WERE ENCODED USING
THE ┬├╧─┼ PROGRAM ABOVE. ╔F THE "-HELP" FLAG IS SPECIFIED, USAGE INFORMATION
WILL BE GIVEN AND THE PROGRAM WILL EXIT.
╘HE THREE OTHER FLAGS ARE USED TO REQUEST DIFFERENT LEVELS OF OPERATIONAL
INFORMATION: INFORMATIVE, VERBOSE, AND DEBUGGING. ╔NFORMATIVE MESSAGES
INCLUDE WHEN A FILE IS COMPLETELY PIECED BACK TOGETHER, VERBOSE INFORMATION
INCLUDES WHEN A FILE IS OPENED OR CLOSED, AND DEBUGGING INFORMATION INCLUDES
A DUMP OF THE INTERNAL "HAVE" TABLE THAT KEEPS TRACK OF WHICH SEGMENTS OF
WHICH FILES THE DECODER CURRENTLY HAS. ├URRENTLY, INFORMATIVE AND VERBOSE
INFORMATION IS HARD-WIRED ON.
╔NTERMEDIATE SEGMENTS ARE DECODED IMMEDIATELY AND PLACED INTO TEMPORARY FILES
IN THE CURRENT DIRECTORY WITH NAMES LIKE "0┬├00001", WITH DIFFERENT NUMBERS.
╘HESE FILES ARE CREATED AND DELETED AS NEEDED. ┬ETWEEN RUNS, IF THERE ARE
ANY FILES THAT HAVE NOT YET BEEN COMPLETELY PIECED TOGETHER, THE "HAVE"
INFORMATION IS SAVED INTO "0┬├-╙╘┴╘", WHICH CAN BE LISTED TO SEE WHAT IS IN
THE TEMPORARY FILES AND WHICH SEGMENTS OF THE FILES ARE MISSING. ┴N EXAMPLE
OF ITS CONTENTS WOULD BE:
00001-00001 BEG 0000001223 0┬├00002 FILEA
00001-00001 BEG 0000540122 0┬├00004 FILEB
00003-00003 MID 0000002832 0┬├00001 FILEB
00005-00005 END 0000000023 0┬├00003 FILEB
╘HE FIRST TWO COLUMNS WITH THE DASH BETWEEN INDICATE THE RANGE OF SEGMENT
NUMBERS THAT ARE CONTAINED IN THE TEMPORARY FILE. ╘HE NEXT COLUMN GIVES THE
INTERPRETATION OF THE TEMPORARY FILE, INDICATING IF IT IS THE BEGINNING,
MIDDLE, OR THE END OF THE COMPLETE FILE BEING DECODED. ╘HE NEXT COLUMN GIVES
THE LENGTH OF THE TEMPORARY DATA (USED FOR ERROR RECOVERY). ╘HE NEXT COLUMN
GIVES THE NAME OF THE TEMPORARY FILE, AND THE FINAL COLUMN GIVES THE NAME OF
THE FILE THAT THE "FRAGMENT" BELONGS TO.
╘HE FACT THAT THE STATUS OF DECODING IS KEPT BETWEEN RUNS MEANS THAT YOU DON'T
HAVE TO HAVE ALL OF THE SEGMENTS OF THE FINAL FILE(S) PRESENT AT ANY ONE RUN.
┼RROR CHECKING IS PERFORMED ON EACH SEGMENT AS IT IS BEING DECODED, AND IF AN
ERROR IS ENCOUTERED, THE SEGMENT WILL BE IGNORED. ┬ECAUSE OF THE "INCREMENTAL
DECODE" FEATURE, YOU CAN OBTAIN CORRECT COPIES OF THE SEGMENTS THAT WERE
FOUND TO BE IN ERROR BEFORE AND RUN THEM THROUGH AGAIN.
╘HIS PROGRAM WILL RECOVER FROM ALL ERRORS IN THE INPUT DATA, INCLUDING ONE
TRICKY CASE THAT THE ├ UNBCODE PROGRAM RELEASED EARLIER BEFORE COULD NOT.
╘HE ONLY WAYS THAT THINGS CAN GET FOWLED UP ARE IF UNBCODE HAS ACCESS
PROBLEMS TO THE TEMPORARY FILES, OR IF YOU ╙╘╧╨ THE PROGRAM AT AN INOPPORTUNE
TIME. ╘O RECOVER FROM ALL ERRORS, YOU JUST HAVE TO DELETE ALL OF THE "0┬├"
TEMPORARY FILES, INCLUDING "0┬├-╙╘┴╘".
─URING DECODING, THIS PROGRAM WILL OVERWRITE EXISTING "0┬├" FILES OR FILES
BEING DECODED.
--------
CRC32 FILE ...
├╥├32 *┬* GENERATOR. ╘HE NUMBERS GENERATED BY THIS PROGRAM MATCH ├╥├32 VALUE
GENERATED BY OTHER PROGRAMS, SUCH AS ╨╦┌╔╨ AND ┌═╧─┼═. ╘HIS PROGRAM IS USED
TO VERIFY THAT FILES HAVE BEEN TRANSPORTED FROM PLACE TO PLACE CORRECTLY.
╘HE PROGRAM USES A TABLE-DRIVEN BYTE-ORIENTED ALGORITHM, SO IT EXECUTES FASTER
THAN THE OLDER (CRC32A) PROGRAM.
--------
CRC32A FILE ...
├╥├32 *┴* GENERATOR. ╘HE NUMBERS GENERATED BY THIS PROGRAM DON'T MATCH THE
├╥├32 GENERATED BY OTHER PROGRAMS, SUCH AS ╨╦┌╔╨. ╚OWEVER, IT WILL ALWAYS
MATCH ITSELF. ╘HE PROGRAM USES A BRUTE-FORCE BITWISE ALGORITHM, SO IT IS
RELATIVELY SLOW. ╘HE PROGRAM IS INCLUDED FOR HYSTERICAL (ER... HISTORICAL)
REASONS.
--------
WC FILE ...
╫ORD COUNTER. ├OUNTS THE LINES, WORDS, AND CHARACTERS IN A FILE. ╘O COUNT
LINES, THE PROGRAM SIMPLY COUNTS CARRIAGE RETURNS (CODE 13 DECIMAL). ┴ WORD
IS ANY NON-WHITESPACE CHARACTER(S) BETWEEN WHITESPACE CHARACTERS. ╫HITESPACE
IS DEFINED AS THE CHARACTERS ╙╨┴├┼, ╘┴┬, AND ╥┼╘╒╥╬ (CODES 32, 9, AND 13
DECIMAL, RESPECTIVELY). ╔F MULTIPLE FILES ARE SPECIFIED, TOTALS WILL BE
REPORTED.
--------
GREP [-[I][V]] [^]SUBSTR[$] FILE ...
╘HE "I" AND "V" FLAGS ARE OPTIONAL. "I" MEANS TO IGNORE THE CASE OF LETTERS
IN COMPARISONS AND THE "V" MEANS TO INVERT THE SEARCH - DISPLAY LINES THAT
DO NOT MATCH THE PATTERN.
╘HE SUBSTRING MAY BEGIN WITH "^" WHICH MEANS ONLY TO CHECK FOR THE STRING
AT THE BEGINNING OF A LINE, AND MAY END WITH "$" WHICH MEANS ONLY TO CHECK
FOR THE STRING AT THE END OF A LINE. ┬OTH "^" AND "$" MAY BE USED AT THE
SAME TIME. ╘HERE IS NO ESCAPE CHARACTER, SO YOU'LL HAVE PROBLEMS TRYING TO
SEACH FOR THE TWO ANCHOR CHARACTERS IN THE FILES.
╧NE OR MORE FILES MAY BE SPECIFIED TO BE SEARCHED. ╔F MORE THAN ONE FILE,
THEN THE NAME OF THE FILE WILL PRECEED EACH LINE PRINTED THAT MATCHES.
╧UTPUT GOES TO STDOUT. ╙OME EXAMPLES FOLLOW:
GREP HELLO HELLO_WORLD.C
GREP -V '^$' FILE1 >FILE1.NOBLANK
GREP -I CR┴I╟ ╚ACK*
GREP -IV 'THE$' FILE2
╘HE FIRST EXAMPLE SIMPLY SEARCHES FOR THE STRING "HELLO". ╘HE SECOND EXAMPLE
REMOVES ALL BLANK LINES FROM THE INPUT FILE. ╘HE THIRD EXAMPLE SEARCHES THE
╚ACK1, ╚ACK2, ╚ACK3, ╚ACK4, AND ╚ACK5 FILES (FOR EXAMPLE) FOR THE WORD "CRAIG"
WHICH CAN BE IN ANY CASE (EG. "├RAIG" WOULD MATCH). ╘HE FOURTH EXAMPLE
DISPLAYS ALL LINES THAT DO NOT END WITH THE WORD "THE" IN ANY CASE (EG. THE
SECOND LINE OF THIS PARAGRAPH WOULD BE OMITTED).
╙OME LIMITATIONS OF THE PROGRAM ARE: ONLY THE FIRST 2048 CHARACTERS OF A
(REALLY LONG) LINE WILL BE CONSIDERED, LINES MAY NOT CONTAIN THE CHARACTER
CODE $00, AND THE LAST LINE OF THE FILE MUST END WITH A ╥┼╘╒╥╬ (OR IT WILL BE
IGNORED).
--------
TR [-FROMSET2TOSET] FILE ...
╘RANSLATE FILES FROM ONE CHARACTER SET TO ANOTHER. ├HARACTER SETS SUPPORTED
ARE: ╨ETSCII, ┴SCII-├R╠F (═╙-─╧╙), ┴SCII-╠F (╒NIX), ┴SCII-├R, AND ╙PEED╙CRIPT.
"FROMSET" AND "TOSET" IN THE SYNOPSIS ABOVE MAY BE ANY OF: "P" (╨ETSCII), "A"
(┴SCII-├R╠F), "AL" (┴SCII-╠F), "AC" (┴SCII-├R), "S" (╙PEED╙CRIPT), "C"
(├OMMODORE == ╨ETSCII), "U" (╒NIX == ┴SCII-╠F), OR "M" (═╙-─╧╙ == ┴SCII-├R╠F).
╘HE THE CHARACTER SET SPECIFIERS ARE SEPARATED BY THE CHARACTER "2" (MEANING
"TRANSLATE TO"). ╔F THE TRANSLATION SPECIFICATION ARGUMENT IS MISSING, THE
DEFAULT OF TRANSLATING FROM ┴SCII-├R╠F TO ╨ETSCII IS USED. ╔NPUT IS TAKEN
FROM THE FILES AND ALL OUTPUT GOES TO STDOUT IN ORDER.
┼XAMPLE:
TR -S2U FILE1 >FILE1.UNIX
╘RANSLATE FROM ╙PEED╙CRIPT FORMAT TO ┴SCII-╠F (╒NIX) FORMAT THE CONTENTS OF
"FILE1" AND PUT INTO FILE "FILE1.UNIX".
╘HE NAME "TR" IS USED (A ╒NIX UTILITY) BECAUSE THE FUNCTIONALITY OF THIS
PROGRAM WILL GROW TO INCLUDE THAT OF THE ╒NIX "TR" UTILITIY.
--------
SORT [-[I][V]] [+COLUMN] FILE ...
╙ORT UTILITY. ├URRENTLY USES A SUCKED-OUT INSERTION SORT ALGORITHM. ╫ILL BE
EXTENDED TO USE THE "┴PPROXIMATION ╙ORT" ALGORITHM, WHICH HAS BETWEEN ╧(╬) AND
╧(╬^2) PERFORMANCE (CLOSE TO ╧(╬) FOR RANDOM DATA). ═AKES USE OF DYNAMICALLY
ALLOCATED MEMORY TO STORE LARGE FILES INTERNALLY.
╘HE "I" AND "V" FLAGS ARE OPTIONAL. "I" MEANS TO IGNORE CASE OF LETTER
CHARACTERS IN COMPARISONS TO DETERMINE ORDER. ╘HE "V" FLAG MEANS TO INVERSE
THE ORDER OF SORTING (PUT INTO DESCENDING ORDER RATHER THEN THE USUAL
ASCENDING ORDER). ╘HE +COL FIELD IS OPTIONAL, AND IF PRESENT, GIVES THE
CHARACTER POSITION OF THE START OF THE SORTING KEY. ╘HE DEFAULT STARTING
POSITION IS 1 (THE BEGINNING OF THE LINE). ┴ ╘┴┬ CHARACTER WILL BE
INTERPRETED AS ANY OTHER CHARACTER.
╔F MULTIPLE FILES ARE SPECIFIED, THEY WILL ALL BE MERGED TOGETHER AND THEN
SORTED AS A GROUP. ╙ORTED OUTPUT GOES TO STDOUT. ╔F THE PROGRAM DIES IN THE
MIDDLE OF ITS OPERATION (EG. OUT OF MEMORY), ALL FILES OWNED BY THE PROGRAM
(PROCESS) WILL BE CLOSED AND ALL MEMORY ALLOCATED TO THE PROGRAM WILL BE
RECLAIMED. ╘HIS IS ALSO TRUE FOR ALL OTHER EXTERNAL PROGRAMS, SINCE THIS IS
IMPLEMENTED IN THE KERNEL.
--------
WRAP FILE ...
╘HIS IS LIKE THE CAT COMMAND, EXCEPT THAT LINES LONGER THAN 75 CHARACTERS
WILL BE WORD-WRAPPED INTO MULTIPLE LINES.
--------
DATE
─ISPLAY THE CURRENT DATE. ╘HE FORMAT IS: "┘┘┘┘/══/──-╚╚:══:╙╙.╘", IN 24-HOUR
TIME FORMAT. ╘HIS COMMAND WILL BE EXTENDED TO DISPLAY IN "HUMAN MODE"
(EG. "╘UE-13-╩UL-1993 05:49:53 PM") AND TO ALLOW YOU TO SET THE DATE.
├URRENTLY, THE DATE WILL ONLY BE SET WHEN THE SYSTEM STARTS UP.
--------
FORTY
╙WITCH TO THE 40-COLUMN (╓╔├) SCREEN ON THE 128. ╘HIS ALSO SWITCHES THE
PROCESSOR INTO SLOW MODE.
--------
EIGHTY
╙WITCH VO THR 80-COLUMN (╓─├) SCREEN ON THE 128. ╘HIS ALSO SWITCHES THE
PROCESSOR INTO FAST MODE. ╘HIS COMMAND WILL ALSO BE USED TO SWITCH TO THE
SOFT 80-COL SCREEN OF THE 64 WHEN THAT FEATURE IS IMPLEMENTED.
--------
READ FILE ...
╞ILE READER. ╒SEFUL ONLY FOR TESTING HOW LONG IT TAKES TO READ A FILE.
╬O OUTPUT IS GENERATED.
--------
MEM
─ISPLAYS PROCESS NUMBER OF THE "MEM" COMMAND, THE TOTAL AMOUNT OF PHYSICAL
MEMORY IN THE SYSTEM, THE AMOUNT OF FREE MEMORY LEFT, AND THE AMOUNT OF
TRANSIENT PROGRAM SPACE FREE.
--------
AS FILE
─┼═╧ ASSEMBLER STILL UNDER DEVELOPMENT. ╧NLY THE TOKENIZER IS IMPLEMENTED.
╔T WILL SCAN THROUGH THE GIVEN FILE AND SPIT OUT REAMS OF TOKENS IN THE EXAMPLE
FORMATS:
I:HELLO,=
C:=
N:87125
S:╬OW IS THE TIME
WHERE THE "I" LINE GIVES AN IDENTIFIER AND THE CHARACTER FOLLOWING IT, THE "C"
LINE GIVES AN UNINTERPRETED CHARACTER, THE "N" LINE GIVES AN INTERPRETED
NUMBER (IT ACCEPTS 32-BIT NUMBERS IN DECIMAL, HEXADECIMAL, AND BINARY), AND
THE "S" LINE GIVES A CHARACTER STRING THAT WAS ENCLOSED IN QUOTES. ╘HE
TOKENIZER IS DESIGNED TO BE VERY EFFICIENT (ALTHOUGH IT CURRENTLY CAN ONLY
OPERATE AS FAST AS THE ├OMMODORE ╦ERNAL ├╚╥╔╬ FUNCTION).
╨LANS FOR THIS PROJECT INCLUDE A ONE-PASS ASSEMBLER THAT WILL USE DYNAMIC
MEMORY TO BE ABLE TO DO VERY LARGE ASSEMBLES, WITH FULL SUPPORT FOR 32-BIT
QUANTITIES, CONDITIONAL ASSEMBLY, MACROS, AND EVENTUALLY LINKABLE CODE.
--------
VI [FILE ...]
─┼═╧ OF ┌┼─: DISPLAYS THE MAIN SCREEN, READS THE NAMED FILE INTO MEMORY,
AND PRINTS IT, SOFT-WRAPPED TO THE SCREEN LENGTH, TO STDOUT. ╔T IS CALLED "VI"
HERE (TO USE A GROTESQUE MISNOMER) TO AVOID NAME CONFLICTS SINCE YOU MAY
ALREADY HAVE A FILE NAMED "ZED" IN YOUR ┴├┼ DIRECTORY (LIKE ╔ DO). ╘HE NEW
┴├┼-┌ED WILL HAVE MORE FUNDAMENTAL FEATURES THAN THE ORIGINAL ┌ED-128 PROGRAM,
INCLUDING AUTO-WRAP LINES, UNLIMITED LINE LENGTH, HORIZONTAL SCROLLING TO 240
CHARACTERS, CHARACTER-ORIENTED COMMANDS RATHER THAN LINE-ORIENTED, AND
MULTIPLE FILE BUFFERS WITH SPLIT-SCREEN DISPLY. ╨LUS, IT WILL ALSO WORK ON
THE 40-COL SCREEN OF THE 128 AND ON THE ├-64. ┬IG PLANS.
--------
HELLO
╘HIS IS JUST A DIPPY LITTLE PROGRAM THAT PRINTS OUT A "HELLO WORLD" MESSAGE.
╔T IS INCLUDED SO PROGRAMMERS MAY EXAMINE IT AND ITS SOURCE FILE TO SEE HOW
SIMPLE ┴├┼ PROGRAMS ARE ORGANIZED.
--------
WINDOW [COLUMNS [ROWS [START├OLUMN [START╥OW]]]]
╙ETS THE WINDOW SIZE. ╔F NO ARGUMENTS ARE GIVE, IT WILL REPORT THE CURRENT
WINDOW DIMENSIONS. ╔F ONE OR MORE ARGUMENTS ARE GIVEN, THEY WILL BE USED AS
WINDOW ARGUMENTS AS ABOVE. ═ISSING ARGUMENTS WILL BE TAKEN FROM THE CURRENT
WINDOW'S SETTINGS. ╙CREEN COORDINATES START AT COLUMN 0 OF ROW 0 AND GO TO
THE FULL SIZE OF THE SCREEN. ┘OU WILL GET AN ERROR MESSAGE IF YOU TRY TO SET
UP AN ILLEGALLY SIZED WINDOW AND THE CURRENT WINDOW WILL REMAIN UNCHANGED.
┴FTER SUCCESSFULLY SETTING A WINDOW, IT WILL BE FILLED WITH A CHECKERBOARD
PATTERN TO INDICATE THE SIZE OF THE WINDOW. ╩UST CLEAR THE SCREEN TO GET RID
OF THIS.
--------
MORE FILE ...
╞ULL-SCREEN FILE VIEWER. ╘HIS WILL DISPLAY A FILE ON THE SCREEN, ONE SCREEN-
FUL AT A TIME. ┴T THE BOTTOM OF EVERY SCREEN IS THE "--═ORE--" PROMPT WHICH
ALSO DISPLAYS THE CURRENT FILE NAME AND THE CURRENT LINE NUMBER. ╘HE LINE
NUMBER IS THAT OF THE LAST COMPLETE LINE DISPLAYED. ┴T THE PROMPT, YOU CAN
ENTER THE FOLLOWING KEYS: ╙╨┴├┼, ╥┼╘╒╥╬, ─╧╫╬, "N", "Q", OR ╙╘╧╨.
╨RESSING ╙╨┴├┼ WILL CAUSE THE NEXT SCREENFUL OF THE FILE TO BE DISPLAYED.
╨RESSING ╥┼╘╒╥╬ OR ─╧╫╬ WILL DISPLAY THE NEXT SCREEN-LINE. ╨RESSING "N"
WILL MOVE YOU ONTO THE BEGINNING OF THE NEXT FILE TO BE DISPLAYED (IF YOU
GAVE MORE THAN ONE ON THE COMMAND LINE). ╨RESSING "Q" OR ╙╘╧╨ WILL ABORT
THE COMMAND BUT LEAVE THE CURRENT SCREENFUL OF TEXT DISPLAYED ON THE SCREEN.
╘HIS PROGRAM CURRENTLY DOES NOT ACCEPT INPUT FROM STDIN.
--------
UNKAR FILE ...
╦┴╥ (╦EVIN'S ┴╥CHIVER) DEARCHIVER, INTENDED TO BE USED FOR EXTRACTING THE ┴├┼
SOURCE CODE, ALTHOUGH YOU MAY FIND THIS ARCHIVER FORMAT USEFUL FOR YOUR OWN
PURPOSES. ╘HIS IS ONLY A MINIMAL IMPLEMENTATION; IT DOESN'T OVERWRITE
EXISTING FILES.
------------------------------------------------------------------------------
7. ╠┴╘┼╥, ─╒─┼
╘O-─O ╠IST (AGAIN...):
- ╙OFT 80-COL SCREEN FOR 64, EVEN FASTER PRINTING.
- ═AKE A RAMDISK FOR USE WITH ┴├┼. ╥┴═─╧╙ IS NOT COMPATIBLE WITH ┴├┼-128.
╙UCH A RAMDISK SHOULD BE ABLE TO RIP THROUGH A FILE AT ABOUT 500╦/SEC WITH
AN ╥┼╒. ╫E HAVE THE TECHNOLOGY. ^^^^^^^^
- ╞IX UP THE SHELL SCRIPT FEATURES OF THE COMMAND SHELL, AUTOEXEC FEATURE,
PSEUDO-PIPES, ARGUMENTS, ETC.
- ═ORE UTILITY PROGRAMS.
- ═ORE ON ┴├┼-┌ED AND THE ASSEMBLER.
╘HIS SYSTEM IS ╨UBLIC ─OMAIN ╙OFTWARE. ╔T IS NOT REQUIRED, BUT IT WOULD BE
APPRECIATED IF PEOPLE WHO USE THIS SOFTWARE REGULARLY WOULD SEND A POSTCARD
FEATURING A PICTURE OF SOME LOCAL ATTRACTION/SCENE TO THE FOLLOWING SNAIL-MAIL
ADDRESS. ┘OU ONLY HAVE TO DO THIS ONCE. ╨LEASE DON'T SEND ANY MONEY (UNLESS
YOU REALLY WANT TO). ╬OTE THAT ╔'LL BE MOVING IN ╩ULY 1994.
├RAIG ┬RUCE
139 ├ANDLEWOOD ├R.
╫ATERLOO, ╧NTARIO
├ANADA, ╬2╠ 5═7
╔F YOU HAVE QUESTIONS, COMMENTS, SUGGESTIONS, OR BUG REPORTS, YOU CAN CONTACT
ME AT THE FOLLOWING E-MAIL ADDRESS.
╦EEP ON ╚ACKIN'!
-├RAIG ┬RUCE
CSBRUCE@CCNGA.UWATERLOO.CA
"╠OOKS LIKE ╧RWELL WAS OFF BY A DECADE."
------------------------------------------------------------------------┼╬─---